package com.example.datasever.db;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

import com.example.datasever.update.DataBaseHelper;


/**
 * Created by mq on 2017/10/22 上午11:09
 * mqcoder90@gmail.com
 */

public class DBHelper extends SQLiteOpenHelper {




    public  static String DB_NAME = "test.db";
    public static final int DB_VERSION = 5;//最低是4版本
    public DBHelper(Context context) {
        super(context, DB_NAME, null, DB_VERSION);
    }

    /**
     * 功能：进行创建表格，只能onCreate方法只有在第一次创建数据库的时候才会被调用，
     * @param database
     */

    @Override
    public void onCreate(SQLiteDatabase database) {
        // TODO 创建数据库后，对数据库的操作
        // sql中Constant是用来存放一些关于数据库的常量的类
        // 类型有：Integer、text文本、varchar(n)、real浮点型、blob二进制类型
        Log.e("TTT", "onCreate");
        Log.e("TTT", "DBDao.SQL_CREATE_TABLE is " + DBDao.SQL_CREATE_TABLE);
        int initDBVersion = 1;
        DataBaseHelper.initDB(database);
        onUpgrade(database, initDBVersion, DB_VERSION);
    }

    /**
     * 功能：数据库版本更新
     * @param database
     * @param oldVersion 旧版本
     * @param newVersion 新版本
     */
    @Override
    public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
        Log.e("TTT", "onUpgrade" + oldVersion + "," + newVersion);
        for (int i = oldVersion; i < newVersion; i++) {
            switch (i) {
                case 1:
                    DataBaseHelper.upToDbVersion2(database);
                    break;
                case 2:
                    DataBaseHelper.upToDbVersion3(database);
                    break;
                default:
                    break;
            }
        }
    }
//    public static void Creatable(){
//        DataBaseHelper.initDB(database);
//
//    }

}
